package com.ruoyi.hualian.service.impl;

import java.util.List;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.hualian.mapper.HlMaterialMapper;
import com.ruoyi.hualian.domain.HlMaterial;
import com.ruoyi.hualian.service.IHlMaterialService;

/**
 * 材质Service业务层处理
 * 
 * @author hujian
 */
@Service
public class HlMaterialServiceImpl implements IHlMaterialService 
{
    @Autowired
    private HlMaterialMapper hlMaterialMapper;

    /**
     * 根据已知信息查询具体对象信息
     * @param material 已知信息
     * @return 具体对象信息
     */
    @Override
    public HlMaterial selectOne(HlMaterial material) {
        LambdaQueryWrapper<HlMaterial> hlMaterialLambdaWrapper = new LambdaQueryWrapper<>();

        hlMaterialLambdaWrapper.eq(HlMaterial::getMaterialMark, material.getMaterialMark());

        return hlMaterialMapper.selectOne(hlMaterialLambdaWrapper);
    }

    /**
     * 查询同步轮材质集合
     */
    @Override
    public List<HlMaterial> selectTpMaterialList() {
        LambdaQueryWrapper<HlMaterial> hlMaterialLambdaWrapper = new LambdaQueryWrapper<>();
        return hlMaterialMapper.selectList(hlMaterialLambdaWrapper);
    }


    /**
     * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     */


    /**
     * 查询材质
     * 
     * @param materialId 材质主键
     * @return 材质
     */
    @Override
    public HlMaterial selectHlMaterialByMaterialId(Long materialId)
    {
        return hlMaterialMapper.selectHlMaterialByMaterialId(materialId);
    }

    /**
     * 查询材质列表
     * 
     * @param hlMaterial 材质
     * @return 材质
     */
    @Override
    public List<HlMaterial> selectHlMaterialList(HlMaterial hlMaterial)
    {
        return hlMaterialMapper.selectHlMaterialList(hlMaterial);
    }

    /**
     * 新增材质
     * 
     * @param hlMaterial 材质
     * @return 结果
     */
    @Override
    public int insertHlMaterial(HlMaterial hlMaterial)
    {
        return hlMaterialMapper.insertHlMaterial(hlMaterial);
    }

    /**
     * 修改材质
     * 
     * @param hlMaterial 材质
     * @return 结果
     */
    @Override
    public int updateHlMaterial(HlMaterial hlMaterial)
    {
        return hlMaterialMapper.updateHlMaterial(hlMaterial);
    }

    /**
     * 批量删除材质
     * 
     * @param materialIds 需要删除的材质主键
     * @return 结果
     */
    @Override
    public int deleteHlMaterialByMaterialIds(Long[] materialIds)
    {
        return hlMaterialMapper.deleteHlMaterialByMaterialIds(materialIds);
    }

    /**
     * 删除材质信息
     * 
     * @param materialId 材质主键
     * @return 结果
     */
    @Override
    public int deleteHlMaterialByMaterialId(Long materialId)
    {
        return hlMaterialMapper.deleteHlMaterialByMaterialId(materialId);
    }
}
